package com.example.hal.model;

import java.util.List;

import org.restlet.resource.ClientResource;

import android.util.Log;

import com.example.hal.model.Utilisateur;

public class UtilisateurController	{
	
	
	
	

	 public final ClientResource cr = new ClientResource(
	 EngineConfiguration.gae_path + "/rest/utilisateur");

	 public UtilisateurController() {
	 EngineConfiguration.getInstance();
	 }

	 public void create(Utilisateur utilisateur) throws Exception {
	 final UtilisateurControllerInterface uci = cr
	 .wrap(UtilisateurControllerInterface.class);

	 try {
	 uci.create(utilisateur);
	 Log.i("UtilisateurController", "Creation success !");
	 } catch (Exception e) {
	 Log.i("UtilisateurController", "Creation failed ! "+e.getMessage());
	 throw e;
	 }
	 }
	 
	 
	 public void update(Utilisateur utilisateur) throws Exception {
		 final UtilisateurControllerInterface uci = cr
		 .wrap(UtilisateurControllerInterface.class);

		 try {
		 uci.create(utilisateur);
		 Log.i("UtilisateurController", "update success !");
		 } catch (Exception e) {
		 Log.i("UtilisateurController", "update failed ! "+e.getMessage());
		 throw e;
		 }
		 }
	 
	 

	 public List<Utilisateur> getAllUtilisateur() throws Exception {
	 final UtilisateurControllerInterface uci = cr
	 .wrap(UtilisateurControllerInterface.class);
	 UtilisateurContainer content;
	 try{

		 content = uci.getAllUtilisateur();
		 Log.i("UtilisateurController", "getAllUtilisateurs success !");
	 }catch (Exception e) {
		 Log.i("UtilisateurController", "getAllUtilisateurs failed ! "+e.getMessage());
		 throw e;
		 }
	 return content.getUtilisateur_list();
	 }
	 
	 

		public UtilisateurContainer getSearchUtilisateur(String search) {
			// TODO Auto-generated method stub
			return null;
		}
		public UtilisateurContainer getFriendUtilisateur(Utilisateur user) {
			// TODO Auto-generated method stub
			return null;
		}

	


		
		 public Utilisateur getConnectionUtilisateur(Utilisateur user) throws Exception {
			 final UtilisateurControllerInterface uci = cr
			 .wrap(UtilisateurControllerInterface.class);
			 Utilisateur u;
			 try{

				 u = uci.getConnectionUtilisateur(user);
				 Log.i("UtilisateurController", "getUtilisateur success !");
			 }catch (Exception e) {
				 Log.i("UtilisateurController", "getUtilisateur failed ! "+e.getMessage());
				 throw e;
				 }
			 return u;
			 }
}
